package com.edu.exam.enums.quality.monitoring;

import com.edu.exam.enums.core.BaseEnum;

/**
 * 分配类型枚举
 */
public enum AssignmentType implements BaseEnum {
    MANUAL("MANUAL", "手动分配"),
    AUTO("AUTO", "自动分配"),
    RULE_BASED("RULE_BASED", "基于规则"),
    WORKLOAD_BALANCED("WORKLOAD_BALANCED", "负载均衡"),
    PRIORITY_BASED("PRIORITY_BASED", "基于优先级"),
    SKILL_BASED("SKILL_BASED", "基于技能"),
    EXPERIENCE_BASED("EXPERIENCE_BASED", "基于经验"),
    AVAILABILITY_BASED("AVAILABILITY_BASED", "基于可用性"),
    ROUND_ROBIN("ROUND_ROBIN", "轮询"),
    RANDOM("RANDOM", "随机"),
    SEQUENTIAL("SEQUENTIAL", "顺序"),
    BATCH("BATCH", "批量"),
    INDIVIDUAL("INDIVIDUAL", "个别"),
    GROUP("GROUP", "分组"),
    HYBRID("HYBRID", "混合");

    private final String code;
    private final String description;

    AssignmentType(String code, String description) {
        this.code = code;
        this.description = description;
    }

    @Override
    public String getCode() {
        return code;
    }

    @Override
    public String getDescription() {
        return description;
    }
}
